package org.jeecg.modules.rental.req;

import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;

@Data
public class SetControlReq {
    private static final long serialVersionUID = 1L;

    /**预估里程*/
    @TableField(exist = false)
    private String carId;

    @TableField(exist = false)
    private String[] carIds;

    @TableField(exist = false)
    private String address;

    /**预估里程*/
    @TableField(exist = false)
    private Integer mileage;

    @TableField(exist = false)
    private Integer assistLevel = 3; // 助力等级 默认3档
    @TableField(exist = false)
    private boolean motorLock = true; // 电机锁 默认上锁
    @TableField(exist = false)
    private boolean powerDisable = true; // 动力禁用 默认禁用
    @TableField(exist = false)
    private Integer speed = 25; // 国标速度 默认25km/h
    @TableField(exist = false)
    private Integer workModeValue = 1; // 工作模式 默认混合
    @TableField(exist = false)
    private Integer startModeValue = 1; // 启动模式 默认非零启动
    @TableField(exist = false)
    public boolean softStartEnabled;  // 软启动开关
    @TableField(exist = false)
    public boolean linkageEnabled;    // 联动功能开关
    @TableField(exist = false)
    public boolean eabsEnabled;       // EABS 开关
    @TableField(exist = false)
    public boolean slopePreventionEnabled; // 防陡坡开关
    @TableField(exist = false)
    public boolean tcsEnabled;        // TCS 开关
    @TableField(exist = false)
    public Integer softStartLevel;        // 软启动等级 (0-31)
    @TableField(exist = false)
    public boolean speedLimitEnabled; // 国标限速开关 (true: 国标限速, false: 解除限速)
    @TableField(exist = false)
    private Integer startGear;   //开机默认为X档

    @TableField(exist = false)
    private Integer parkingToPTime; //停车X秒进P档
    // 设置欠压保护电压
    @TableField(exist = false)
    private Float undervoltageProtection;

    @TableField(exist = false)
    Integer gear1Percentage;
    @TableField(exist = false)
    Integer gear2Percentage;
    @TableField(exist = false)
    private boolean brakeEnergyRecoveryEnabled; // 刹车能回收开关
    @TableField(exist = false)
    private boolean handleBrakeEnergyRecoveryEnabled; // 转吧刹车能开关
    @TableField(exist = false)
    private boolean handleReleasePowerEnabled; // 刹把解P
    @TableField(exist = false)
    private Integer recoveryIntensity; // 刹车能回收强度
    @TableField(exist = false)
    private Integer assistIntensity; // 助力强度
    @TableField(exist = false)
    private boolean handleCruiseControlEnabled; // 转把定速开启
    @TableField(exist = false)
    private boolean buttonCruiseControlEnabled; // 按键定速开启
    private Integer polePairs;
    private Integer batteryVoltageType;
    private Integer currentLimit;

    /**
     * 大灯开关 (0xA10A, bit2)
     */
    @TableField(exist = false)
    private Boolean lightOn;

    /**
     * 闪烁模式 (0xA10A, bit1)  true: 闪烁, false: 常亮
     */
    @TableField(exist = false)
    private Boolean blinkMode;

    /**
     * 闪烁次数 (0xA10A, 低字节)
     */
    @TableField(exist = false)
    private Integer blinkTimes;




}
